## 11.11. Alphabetical List of Keys in Command Mode

For brevity, control characters are marked by ^.

Command | Action
--- | ---
`a` | Append text after cursor.
`A` | Append text at end-of-line.
`^A` | Search for next occurrence of word under cursor.
`b` | Back up to beginning of word in current line.
`B` | Back up one word, treating punctuation marks as words.
`^B` | Scroll backward one window.
`c` | Change text up to target of next movement command.
`C` | Change to end of current line.
`^C` | End insert mode; interrupts a long operation.
`d` | Delete up to target of next movement command.
`D` | Delete to end of current line.
`^D` | Scroll down half-window; in insert mode, unindent to shiftwidth if autoindent is set.
`e` | Move to end of word.
`E` | Move to end of word, treating punctuation as part of word.
`^E` | Show one more line at bottom of window.
`f` | Find next character typed forward on current line.
`F` | Find next character typed backward on current line.
`^F` | Scroll forward one window.
`g` | Unused.
`G` | Go to specified line or end-of-file.
`^G` | Print information about file on status line.
`h` | Left arrow cursor key.
`H` | Move cursor to home position.
`^H` | Left arrow cursor key; Backspace key in insert mode.
`i` | Insert text before cursor.
`I` | Insert text before first nonblank character on line.
`^I` | Unused in command mode; in insert mode, same as Tab key.
`j` | Down arrow cursor key.
`J` | Join previous line to current line.
`^J` | Down arrow cursor key; in insert mode, move down a line.
`k` | Up arrow cursor key.
`K` | Unused.
`^K` | Unused.
`l` | Right arrow cursor key.
`L` | Move cursor to last position in window.
`^L` | Redraw screen.
`m` | Mark the current cursor position in register (a-z).
`M` | Move cursor to middle position in window.
`^M` | Move to beginning of next line.
`n` | Repeat the last search command.
`N` | Repeat the last search command in reverse direction.
`^N` | Down arrow cursor key.
`o` | Open line below current line.
`O` | Open line above current line.
`^O` | Unused.
`p` | Put yanked or deleted text after or below cursor.
`P` | Put yanked or deleted text before or above cursor.
`^P` | Up arrow cursor key.
`q` | Unused.
`Q` | Quit vi and enter ex line-editing mode.
`^Q` | Unused. (On some terminals, resume data flow.)
`r` | Replace character at cursor with the next character you type.
`R` | Replace characters.
`^R` | Redraw the screen.
`s` | Change the character under the cursor to typed characters.
`S` | Change entire line.
`^S` | Unused. (On some terminals, stop data flow.)
`t` | Find next character typed forward on current line and position cursor before it.
`T` | Find next character typed backward on current line and position cursor after it.
`^T` | Unused in command mode; in insert mode, move to next tab setting.
`u` | Undo the last change made.
`U` | Restore current line, discarding changes.
`^U` | Scroll the screen upward a half-window.
`v` | Unused.
`V` | Unused.
`^V` | Unused in command mode; in insert mode, insert next character verbatim.
`w` | Move to beginning of next word.
`W` | Move to beginning of next word, treating punctuation marks as words.
`^W` | Unused in command mode; in insert mode, back up to beginning of word.
`x` | Delete character under cursor.
`X` | Delete character before cursor.
`^X` | Unused.
`y` | Yank or copy text up to target of following movement command into temporary buffer.
`Y` | Make copy of current line.
`^Y` | Show one more line at top of window.
`z` | Reposition line containing cursor. z must be followed by Return (reposition line to top of screen), . (reposition line to middle of screen), or - (reposition line to bottom of screen).
`ZZ` | Exit the editor, saving changes.

Copyright © 2001 O'Reilly & Associates. All rights reserved.